package com.awn.weidian.demo.controller;

import com.awn.weidian.demo.mapper.IUser;
import com.awn.weidian.demo.pojo.User;
import com.awn.weidian.demo.service.DateHandle;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@CrossOrigin
@RequestMapping("/pan/qiang")

public class UserController {

    //业务处理类说明
    @Autowired
    private IUser it;
    @Autowired
    private DateHandle dh;
    /**
     * @GetMapping()  Restful协议中针对查询，提供的访问方式
     */
    @GetMapping("/show")
    public List<User> showUser(){
        return it.showList();
    }

    /**
     * @PostMapping() //Restful协议中针对查询，提供的访问方式
     * @RequestBody   //指前台页面传递的数据类型，这里注意，spring-boot要转化application/json类型传递参数，
     *                 否则会出现415错误，只需将前台修改成！content-type:application/json方式传递即可
     */
    @PostMapping("/add")
    public int addUser(@RequestBody User user){
        user.setRegistertime(dh.showTime());
        return it.addUser(user);
    }

    /**
     * @PutMapping Restful协议中针对查询，提供的访问方式
     * @PathVariable 路径指定变量，put可以直接访问地址上变量
     */
//    @PutMapping("/findlevel/{aa}")
//    public User findLevel(@PathVariable String aa){
//        return it.findLevel(aa);
//    }
//
//    @PutMapping("/findlevelname/{bb}")
//    public User findLevelname(@PathVariable String bb){
//        return it.findLevelname(bb);
//    }
//
//    @PutMapping("/findconsumption/{cc}")
//    public User findConsumption(@PathVariable String cc){
//        return it.findConsumption(cc);
//    }

    @PostMapping("/update")
    public int updateUser(@RequestBody User User){
        return it.update(User);
    }

    /**
     * @DeleteMapping Restful协议中针对查询，提供的访问方式
     * @PathVariable 路径指定变量，put可以直接访问地址上变量
     */
//    @DeleteMapping("/delete/{uid}")
//    public int deleteUser(@PathVariable String uid){
//        return it.deleteUser(uid);
//    }

}
